/*
 * Copyright © 2004-2014 chenYuan. All rights reserved.
 * @Website:wwww.jspx.net
 * @Mail:39793751@qq.com
 * @author: chenYuan , 陈原
 * @License: Jspx.net Framework Code is open source (LGPL)，Jspx.net Framework 使用LGPL 开源授权协议发布。
 * @jvm:jdk1.6+  x86/amd64
 *
 */
package com.jspx.scriptmark;

import com.jspx.scriptmark.core.TagNode;
import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * Created by IntelliJ IDEA.
 * User: chenYuan
 * Date: 2008-12-19
 * Time: 14:13:12
 * 
 */
public interface TemplateModel extends Serializable
{
    Configurable getConfigurable();
    String getSource();
    List<TagNode> getRootTree() throws Exception;
    List<TagNode> getBlockTree(int begin,int end) throws Exception;
    List<TagNode> getBlockTree(int begin,int end, Map<String, String> tagMap) throws Exception;
    List<TagNode> getBlockTree(String src, Map<String, String> tagMap) throws Exception;
    String getSource(int begin, int end);
    String getBody(int begin, int end);
    long getLastModified();
    void clear();
}